package com.love.travel.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.love.common.core.annotation.Excel;
import com.love.common.core.web.domain.BaseEntity;

/**
 * 产品行程对象 travel_product_itinerary
 * 
 * @author love
 * @date 2025-10-24
 */
public class TravelProductItinerary extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 行程ID */
    private Long itineraryId;

    /** 产品ID（关联travel_product） */
    @Excel(name = "产品ID", readConverterExp = "关=联travel_product")
    private Long productId;

    /** 第几天（从1开始） */
    @Excel(name = "第几天", readConverterExp = "从=1开始")
    private Long dayNumber;

    /** 当日行程标题 */
    @Excel(name = "当日行程标题")
    private String title;

    /** 当日行程描述 */
    @Excel(name = "当日行程描述")
    private String description;

    /** 餐饮安排（如：早餐-包含 午餐-自理 晚餐-包含） */
    @Excel(name = "餐饮安排", readConverterExp = "如=：早餐-包含,午=餐-自理,晚=餐-包含")
    private String meals;

    /** 住宿安排 */
    @Excel(name = "住宿安排")
    private String accommodation;

    /** 交通安排 */
    @Excel(name = "交通安排")
    private String transportation;

    private Long[] attractionIds;

    public void setItineraryId(Long itineraryId)
    {
        this.itineraryId = itineraryId;
    }

    public Long getItineraryId() 
    {
        return itineraryId;
    }

    public void setProductId(Long productId) 
    {
        this.productId = productId;
    }

    public Long getProductId() 
    {
        return productId;
    }

    public void setDayNumber(Long dayNumber) 
    {
        this.dayNumber = dayNumber;
    }

    public Long getDayNumber() 
    {
        return dayNumber;
    }

    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }

    public void setDescription(String description) 
    {
        this.description = description;
    }

    public String getDescription() 
    {
        return description;
    }

    public void setMeals(String meals) 
    {
        this.meals = meals;
    }

    public String getMeals() 
    {
        return meals;
    }

    public void setAccommodation(String accommodation) 
    {
        this.accommodation = accommodation;
    }

    public String getAccommodation() 
    {
        return accommodation;
    }

    public void setTransportation(String transportation) 
    {
        this.transportation = transportation;
    }

    public String getTransportation() 
    {
        return transportation;
    }

    public Long[] getAttractionIds() {
        return attractionIds;
    }

    public void setAttractionIds(Long[] attractionIds) {
        this.attractionIds = attractionIds;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("itineraryId", getItineraryId())
            .append("productId", getProductId())
            .append("dayNumber", getDayNumber())
            .append("title", getTitle())
            .append("description", getDescription())
            .append("meals", getMeals())
            .append("accommodation", getAccommodation())
            .append("transportation", getTransportation())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
